<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>xx</title>
</head>
    <script>
	function A(name)
	{
		this.name = name;
		this.show_name = function(){alert(this.name);}
	}

	function B(name)
	{
		A.apply(this,arguments);//这样就替换成了新的apply方法.arguments表示参数数组
	}

	</script>
<body>

    <script>
		var a = new A("x");
		a.show_name();

		var b = new B("y"); 
		b.show_name();
		alert(b.name);
		//只有超类的参数顺序根子类中的参数顺序完全一致时才可以用arguments传递参数,否则必须创建一个新的数组来传递参数
		//因为他实质上相当于 把子类的参数作为数组 全部投入了超类 并重新执行了一遍 只不过把this换做当前的对象
		//这样子就等于完全复制了超类 就等于是伪造了一种继承关系
	</script>
</body>
</noframes></html>



